//
// srm1.h
// System Reference Manual (SRM) / Header file for generation of SRM for the Protea Project
// Copyright (C) 2008 Bruce A. James
//
// This program is part of the Protea Project.
//
// The Protea Project is free software; you can redistribute it and/or modify it 
// under the terms of the GNU General Public License as published by the 
// Free Software Foundation, either version 3 of the License, or (at your 
// option) any later version.
//
// The Protea Project is distributed in the hope that it will be useful, but 
// WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 
// or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 
// for more details.
// 
// You should have received a copy of the GNU General Public License along 
// with this program.  If not, see <http://www.gnu.org/licenses/>.
//
// Please send correspondence to:
//
// theproteaproject@gmail.com
//

#ifndef __PROTEA_SRM1_H__
#define __PROTEA_SRM1_H__

//@ SEC 1
//@ CHA DATABASE_DEFN
//@ DBF DATABASE_NBR SMALLINT
//@ DBF DATABASE_NAME CHAR(200)
//@ DBF DATE_GENERATED SMALLINT
//@ DBF DB_USER CHAR(32)
//@ DBF DB_PASSWORD CHAR(32)
//@ DBF DB_TYPE INTEGER
//@ DBF DB_MODIFY_FLAG SMALLINT
//@ DBF CUST_VERSION_NBR INTEGER
//@ DBF APPL_NBR SMALLINT
//@ GRS Table constraints
//@ PRIMARY KEY(s): DATABASE_NBR, APPL_NBR
//@ GRE 
//@ CHA DATASET_DESCR
//@ DBF FORMAT_NUMBER INTEGER
//@ DBF CUST_VERSION_NBR INTEGER
//@ DBF VIEW_FLAG SMALLINT
//@ DBF DATABASE_NBR SMALLINT
//@ DBF APPL_NBR SMALLINT
//@ GRS Table constraints
//@ PRIMARY KEY(s): FORMAT_NUMBER, APPL_NBR
//@ GRE 
//@ CHA DATA_STRUCTURES
//@ DBF FORMAT_NUMBER INTEGER
//@ DBF FIELD_NUMBER INTEGER
//@ DBF MIN_LENGTH INTEGER
//@ DBF MAX_LENGTH INTEGER
//@ DBF DATA_TYPE SMALLINT
//@ DBF DECIMAL_PLACES SMALLINT
//@ DBF CRITICAL_FIELD INTEGER
//@ DBF DESCRIPTOR_FLAGS INTEGER
//@ DBF SEQUENCE_NBR SMALLINT
//@ DBF CUST_VERSION_NBR INTEGER
//@ DBF APPDIC_VERSION INTEGER
//@ DBF APPL_NBR SMALLINT
//@ GRS Table constraints
//@ PRIMARY KEY(s): FORMAT_NUMBER, FIELD_NUMBER, APPL_NBR
//@ GRE 
//@ CHA DATA_TYPE_DEFN
//@ DBF DATA_TYPE SMALLINT
//@ DBF TYPE_NAME CHAR(26)
//@ DBF STD_LENGTH SMALLINT
//@ DBF DECIMAL_PLACES SMALLINT
//@ DBF CUST_VERSION_NBR INTEGER
//@ GRS Table constraints
//@ PRIMARY KEY(s): DATA_TYPE
//@ GRE 
//@ CHA FIELD_DESCRIPTOR
//@ DBF FIELD_NUMBER INTEGER
//@ DBF FIELD_NAME CHAR(16)
//@ DBF DATA_TYPE SMALLINT
//@ DBF DB_BYTE_LENGTH INTEGER
//@ DBF DB_FIELD_LENGTH SMALLINT
//@ DBF CRITICAL_FIELD INTEGER
//@ DBF DECIMAL_PLACES SMALLINT
//@ DBF FIELD_VALUE CHAR(254)
//@ DBF DESCRIPTOR_FLAGS INTEGER
//@ DBF APPL_NBR SMALLINT
//@ DBF DESC_MESSAGE INTEGER
//@ GRS Table constraints
//@ PRIMARY KEY(s): FIELD_NUMBER, APPL_NBR
//@ GRE 
//@ CHA FORMAT_DESCRIPTR
//@ DBF FORMAT_NUMBER INTEGER
//@ DBF FORMAT_NAME CHAR(21)
//@ DBF FORMAT_TYPE SMALLINT
//@ DBF CUST_VERSION_NBR INTEGER
//@ DBF CMND_FORMAT_NAME CHAR(16)
//@ DBF CRITICAL_FORMAT INTEGER
//@ DBF APPL_NBR SMALLINT
//@ DBF CHILD_FORMAT INTEGER
//@ DBF COMPONENT_ID SMALLINT
//@ GRS Table constraints
//@ PRIMARY KEY(s): FORMAT_NUMBER, APPL_NBR
//@ GRE 
//@ CHA FMT_TYPE_DEFN
//@ DBF FORMAT_TYPE SMALLINT
//@ DBF TYPE_NAME CHAR(26)
//@ DBF CUST_VERSION_NBR INTEGER
//@ GRS Table constraints
//@ PRIMARY KEY(s): FORMAT_TYPE
//@ GRE 
//@ CHA LITERAL_DEFN
//@ DBF LITERAL_NUMBER SMALLINT
//@ DBF LITERAL_NAME CHAR(16)
//@ DBF LITERAL_LENGTH SMALLINT
//@ DBF LITERAL CHAR(16)
//@ DBF CUST_VERSION_NBR INTEGER
//@ DBF APPL_NBR SMALLINT
//@ DBF SYSTEM_OBJECT CHAR(1)
//@ GRS Table constraints
//@ PRIMARY KEY(s): LITERAL_NUMBER, APPL_NBR
//@ GRE 
//@ CHA COMPONENT_DEFN
//@ DBF APPL_NBR SMALLINT
//@ DBF COMPONENT_ID SMALLINT
//@ DBF COMPONENT_NAME CHAR(32)
//@ DBF COMPONENT_REQ SMALLINT
//@ GRS Table constraints
//@ PRIMARY KEY(s): COMPONENT_ID, APPL_NBR
//@ GRE 
//@ CHA SYSTEM_VALUES
//@ DBF FIELD_NUMBER INTEGER
//@ DBF FIELD_NAME CHAR(16)
//@ DBF DATA_TYPE SMALLINT
//@ DBF FIELD_VALUE CHAR(254)
//@ DBF APPL_NBR SMALLINT
//@ DBF DESCRIPTION CHAR(80)
//@ DBF COMPONENT_ID SMALLINT
//@ GRS Table constraints
//@ PRIMARY KEY(s): FIELD_NUMBER, APPL_NBR
//@ GRE 
//@ CHA TRANSACTION_DEFN
//@ DBF TRANS_NUMBER SMALLINT
//@ DBF TRANS_CODE CHAR(21)
//@ DBF DEFAULT_REC_FLAG INTEGER
//@ DBF CUST_VERSION_NBR INTEGER
//@ DBF APPL_NBR SMALLINT
//@ DBF COMPONENT_ID SMALLINT
//@ GRS Table constraints
//@ PRIMARY KEY(s): TRANS_NUMBER, APPL_NBR
//@ GRE 
//@ CHA USER_EXIT_DEFNS
//@ DBF USER_EXIT_NUMBER SMALLINT
//@ DBF USER_EXIT_NAME CHAR(21)
//@ DBF USER_EXIT_DESC CHAR(80)
//@ DBF USER_EXIT_ACTIVE SMALLINT
//@ DBF TRANS_NUMBER SMALLINT
//@ DBF APPL_NBR SMALLINT
//@ GRS Table constraints
//@ PRIMARY KEY(s): APPL_NBR, USER_EXIT_NUMBER
//@ GRE 
//@ CHA DB_RELATE
//@ DBF FORMAT_NUMBER INTEGER
//@ DBF FIELD_NUMBER INTEGER
//@ DBF RELATE_TYPE INTEGER
//@ DBF TGT_FORMAT INTEGER
//@ DBF TGT_FIELD INTEGER
//@ DBF DATABASE_NBR SMALLINT
//@ DBF APPL_NBR SMALLINT
//@ GRS Table constraints
//@ PRIMARY KEY(s): FORMAT_NUMBER, FIELD_NUMBER, RELATE_TYPE, APPL_NBR
//@ GRE 
//@ CHA DB_RELATE_TYPE
//@ DBF RELATE_TYPE INTEGER
//@ DBF TYPE_NAME CHAR(26)
//@ GRS Table constraints
//@ PRIMARY KEY(s): RELATE_TYPE
//@ GRE 
//@ CHA APPL_DEFN
//@ DBF APPL_NBR SMALLINT
//@ DBF APPL_NAME CHAR(254)
//@ DBF OPTION_FLAGS CHAR(16)
//@ DBF VERSION_ID CHAR(18)
//@ DBF CUST_VERSION_NBR INTEGER
//@ DBF APPDIC_VERSION INTEGER
//@ DBF UNICODE_MULT SMALLINT
//@ GRS Table constraints
//@ PRIMARY KEY(s): APPL_NBR
//@ GRE 
//@ CHA MSG_DEFN
//@ DBF MSG_NBR INTEGER
//@ DBF MSG_TEXT CHAR(254)
//@ DBF MSG_NAME CHAR(32)
//@ DBF LANG_ID SMALLINT
//@ DBF APPL_NBR SMALLINT
//@ GRS Table constraints
//@ PRIMARY KEY(s): MSG_NBR, APPL_NBR, LANG_ID
//@ GRE 
//@ CHA FORMAT_NBR_POOL
//@ DBF FORMAT_NUMBER INTEGER
//@ DBF APPL_NBR SMALLINT
//@ GRS Table constraints
//@ PRIMARY KEY(s): FORMAT_NUMBER, APPL_NBR
//@ GRE 
//@ CHA FIELD_NBR_POOL
//@ DBF FIELD_NUMBER INTEGER
//@ DBF APPL_NBR SMALLINT
//@ GRS Table constraints
//@ PRIMARY KEY(s): FIELD_NUMBER, APPL_NBR
//@ GRE 
//@ CHA LIT_GROUP
//@ DBF LIT_GROUP_NAME CHAR(16)
//@ DBF LIT_GROUP_NBR INTEGER
//@ DBF APPL_NBR SMALLINT
//@ DBF DESCRIPTION CHAR(80)
//@ DBF SYSTEM_OBJECT CHAR(1)
//@ DBF COMPONENT_ID SMALLINT
//@ GRS Table constraints
//@ PRIMARY KEY(s): APPL_NBR, LIT_GROUP_NBR
//@ GRE 
//@ CHA LIT_RELATE
//@ DBF LITERAL_NUMBER SMALLINT
//@ DBF LIT_GROUP_NBR INTEGER
//@ DBF LIT_GROUP_VAL SMALLINT
//@ DBF APPL_NBR SMALLINT
//@ GRS Table constraints
//@ PRIMARY KEY(s): LITERAL_NUMBER, APPL_NBR, LIT_GROUP_NBR
//@ GRE 
//@ CHA LANGUAGE_DEFN
//@ DBF LANG_ID SMALLINT
//@ DBF LANG_NAME CHAR(16)
//@ DBF LANG_DESC CHAR(80)
//@ GRS Table constraints
//@ PRIMARY KEY(s): LANG_ID
//@ GRE 
//@ CHA FIELD_RELATE
//@ DBF APPL_NBR SMALLINT
//@ DBF MSTR_FIELD_NBR SMALLINT
//@ DBF FIELD_NUMBER INTEGER
//@ GRS Table constraints
//@ PRIMARY KEY(s): FIELD_NUMBER, APPL_NBR, MSTR_FIELD_NBR
//@ GRE 
//@ CHA LITERAL_VALUES
//@ DBF APPL_NBR SMALLINT
//@ DBF LITERAL_NUMBER SMALLINT
//@ DBF LANG_ID SMALLINT
//@ DBF LITERAL CHAR(16)
//@ GRS Table constraints
//@ PRIMARY KEY(s): LITERAL_NUMBER, APPL_NBR, LANG_ID
//@ GRE 
//@ CHA MSG_MASTER
//@ DBF MSG_NBR INTEGER
//@ DBF MSG_NAME CHAR(32)
//@ DBF SYSTEM_OBJECT CHAR(1)
//@ DBF APPL_NBR SMALLINT
//@ DBF COMPONENT_ID SMALLINT
//@ GRS Table constraints
//@ PRIMARY KEY(s): MSG_NBR, APPL_NBR
//@ GRE 
//@ CHA JOB_SCHEDULE
//@ DBF APPL_NBR SMALLINT
//@ DBF JOB_COMP_CODE INTEGER
//@ DBF JOB_DESC CHAR(254)
//@ DBF JOB_NAME CHAR(32)
//@ DBF JOB_PARM INTEGER
//@ DBF JOB_RECUR_MODE INTEGER
//@ DBF JOB_RESULT_DATA CHAR(254)
//@ DBF JOB_RUN_DATE DATE
//@ DBF JOB_RUN_TIME TIME
//@ DBF JOB_SCHED_DATE DATE
//@ DBF JOB_SCHED_TIME TIME
//@ DBF JOB_STATE INTEGER
//@ DBF JOB_TYPE INTEGER
//@ GRS Table constraints
//@ PRIMARY KEY(s): JOB_NAME, APPL_NBR
//@ GRE 
//@ CHA JOB_SCHEDULE_PARMS
//@ DBF APPL_NBR SMALLINT
//@ DBF JOB_NAME CHAR(32)
//@ DBF JOB_PARM_NUMBER SMALLINT
//@ DBF JOB_PARM_VALUE CHAR(254)
//@ GRS Table constraints
//@ PRIMARY KEY(s): JOB_NAME, APPL_NBR, JOB_PARM_NUMBER
//@ GRE 

#endif
